'''
Created on Feb 17, 2011

@author: kivson
'''
import os
import os.path
from vo.arquivo import Arquivo

class BuscaArquivo(object):
    '''
    classdocs
    '''


    def __init__(self, raiz ):
        '''
        Constructor
        '''
        self.raiz = raiz
    
    def pegaTodos(self):
        self.lista = []
        if os.path.exists(self.raiz):
            if os.path.isdir(self.raiz):
                for pasta, pastas, arquivos in os.walk(self.raiz):
                    for arquivo in arquivos:
                        arq = Arquivo(arquivo, "", pasta)
                        arq.tamanho = os.path.getsize(os.path.join(pasta, arquivo))
                        self.lista.append(arq)
            else: 
                pasta, arquivo = os.path.split(self.raiz)
                arq = Arquivo(arquivo, "", pasta)
                arq.tamanho = os.path.getsize(self.raiz)
                self.lista.append(Arquivo(arquivo, "", pasta))
                
        return self.lista
    


if __name__ == "__main__":
    b = BuscaArquivo("../../")
    lista = b.pegaTodos()
    print len (lista),   "--->",  lista
    print len(lista) == len (set(lista)) 
    b = BuscaArquivo("./teste")
    lista = b.pegaTodos()
    print len (lista),   "--->",  lista